OpenStack Mitaka : Configure Swift#1 (Control Node)
2016/05/11 |
Configure OpenStack Object Storage (Swift).
This example shows to configure like the environment below.
| +------------------+ | +-----------------+ | [ Control Node ] |10.0.0.30 | 10.0.0.50| [ Proxy Node ] | | Keystone |-----------+-----------| | +------------------+ | +-----------------+ | +---------------------------+--------------------------+ | | | |10.0.0.71 |10.0.0.72 |10.0.0.73 +-------+----------+ +--------+---------+ +--------+---------+ | [Storage Node#1] | | [Storage Node#2] | | [Storage Node#3] | | |-------| |-------| | +------------------+ +------------------+ +------------------+ |
[1] | Add Swift user or service on Keystone Server (Control Node) first. |
# add swift user [root@dlp ~(keystone)]# openstack user create --domain default --project service --password servicepassword swift +--------------------+----------------------------------+ | Field | Value | +--------------------+----------------------------------+ | default_project_id | 4a80b177558b49d7a58038770a344aeb | | domain_id | dc18e12756a54ce7aea35e99f01decd8 | | enabled | True | | id | 5c1baa0245b04c6d9213cd9c03831f03 | | name | swift | +--------------------+----------------------------------+ # add swift user in admin role [root@dlp ~(keystone)]# openstack role add --project service --user swift admin
# add an entry for swift service [root@dlp ~(keystone)]# openstack service create --name swift --description "OpenStack Object Storage" object-store +-------------+----------------------------------+ | Field | Value | +-------------+----------------------------------+ | description | OpenStack Object Storage | | enabled | True | | id | c20cb07ca9bd4b328e8e206555773183 | | name | swift | | type | object-store | +-------------+----------------------------------+ # define the IP address of Proxy Node [root@dlp ~(keystone)]# export swift_proxy=10.0.0.50
# add an entry for swift endpoint (public) [root@dlp ~(keystone)]# openstack endpoint create --region RegionOne object-store public http://$swift_proxy:8080/v1/AUTH_%\(tenant_id\)s +--------------+---------------------------------------------+ | Field | Value | +--------------+---------------------------------------------+ | enabled | True | | id | 0c06923c959b41868770b18b39919c1a | | interface | public | | region | RegionOne | | region_id | RegionOne | | service_id | c20cb07ca9bd4b328e8e206555773183 | | service_name | swift | | service_type | object-store | | url | http://10.0.0.50:8080/v1/AUTH_%(tenant_id)s | +--------------+---------------------------------------------+ # add an entry for swift endpoint (internal) [root@dlp ~(keystone)]# openstack endpoint create --region RegionOne object-store internal http://$swift_proxy:8080/v1/AUTH_%\(tenant_id\)s +--------------+---------------------------------------------+ | Field | Value | +--------------+---------------------------------------------+ | enabled | True | | id | 5bfde60a07824fa280cae8dba0259c4d | | interface | internal | | region | RegionOne | | region_id | RegionOne | | service_id | c20cb07ca9bd4b328e8e206555773183 | | service_name | swift | | service_type | object-store | | url | http://10.0.0.50:8080/v1/AUTH_%(tenant_id)s | +--------------+---------------------------------------------+ # add an entry for swift endpoint (admin) [root@dlp ~(keystone)]# openstack endpoint create --region RegionOne object-store admin http://$swift_proxy:8080/v1 +--------------+----------------------------------+ | Field | Value | +--------------+----------------------------------+ | enabled | True | | id | 24c317024a8c4bb5972c4de58f50451b | | interface | admin | | region | RegionOne | | region_id | RegionOne | | service_id | c20cb07ca9bd4b328e8e206555773183 | | service_name | swift | | service_type | object-store | | url | http://10.0.0.50:8080/v1 | +--------------+----------------------------------+ |